package io;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;

public class demo06 {
    public static void main(String[] args) throws IOException {
////        打开文件
//        InputStream inputStream = new FileInputStream("d:/text.txt");
//        try{
//            while (true){
////            版本1
////            int b = inputStream.read();
////            if (b == -1){
////                break;
////            }
////            System.out.printf("0x%x ",b);
//
////            版本2 先将整体读到数组中，再遍历字节数组
//                byte[] bytes = new byte[1024];
////            返回值int，表示这次实际读取到多少个字节了
//                int n = inputStream.read(bytes);
//                System.out.println(n);
//                if (n == -1){
//                    break;
//                }
//                for (int i = 0; i < n; i++) {
//                    System.out.printf("0x%x ",bytes[i]);
//                }
//                System.out.println(n);
//            }
//        }finally {
//            inputStream.close();
//        }

//        创建流对象时，代码执行出了try{}，会自动调用inputStream的close  --> 前提：务必实现Closeable接口
        try (InputStream inputStream = new FileInputStream("d:/text.txt")){
            byte[] bytes = new byte[1024];
            int n = inputStream.read(bytes);
            for (int i = 0; i < n; i++) {
                System.out.printf("0x%x ",bytes[i]);
            }
        }
    }
}
